In a computer network environment, it is often advantageous to implement a remote procedure call (RPC) which allows an application on one computer to execute a specific function on another computer in the network. This allows a commonly used function to be stored and executed on only one computer in the network.
However, one result of having remote procedure calls in an application is that the application will not function properly if the computer is disconnected from the network. Occasionally, a user may wish to operate the computer in a stand-alone configuration, for example when traveling, or when the network is down due to maintenance or system failures. In this situation, the user is not able to fully utilize the application because of the remote procedure calls.